动态规划
1.划分阶段:斐波那契数列的每一项作为一个阶段
2.确定状态:第iii项的值用数组第iii位表示:a[i]a[i]a[i]
3.确定转移方程:a[i]=a[i−1]+a[i−2]a[i]=a[i-1]+a[i-2]a[i]=a[i−1]+a[i−2]
结尾法:dp[i]dp[i]dp[i]就表示以下标iii结尾的答案
1,最优化原理:最优解所包含的子问题的解也是最优的
2.无后效性:某状态以后的过程不会影响以后的决策
3.子问题重叠:子问题直接不独立
结尾法示例
最长上升子序列
前缀法:dp[i]dp[i]dp[i]表示111~iii处理完毕的结果,dp[i]dp[i]dp[i]就是答案
前缀法示例
最长公共子序列